package com.zelix;

import java.util.Hashtable;
import java.util.Vector;

public class hl extends vh
{

    static final Hashtable g;
    Vector h;
    int i;

    public hl(int j)
    {
        super(j);
        h = new Vector();
    }

    void a(String s)
    {
        h.addElement(s);
    }

    public String a()
    {
        StringBuffer stringbuffer;
        int j;
        int k;
        int i1;
        i1 = si.g;
        stringbuffer = new StringBuffer();
        j = h.size();
        if(j == 0)
            break MISSING_BLOCK_LABEL_188;
        k = 0;
        if(i1 == 0) goto _L2; else goto _L1
_L1:
        stringbuffer.append("[");
        k++;
_L2:
        if(k < i) goto _L1; else goto _L3
_L3:
        int l;
        if(j == 1)
        {
            String s = (String)h.elementAt(0);
            String s1 = (String)g.get(s);
            if(s1 != null)
            {
                stringbuffer.append(s1);
                if(i1 == 0)
                    break MISSING_BLOCK_LABEL_188;
            }
            stringbuffer.append("L");
            stringbuffer.append(s);
            stringbuffer.append(";");
            if(i1 == 0)
                break MISSING_BLOCK_LABEL_188;
        }
        stringbuffer.append("L");
        l = 0;
        if(i1 == 0) goto _L5; else goto _L4
_L4:
        String s2 = (String)h.elementAt(l);
        if(l > 0)
            stringbuffer.append("/");
        stringbuffer.append(s2);
        l++;
_L5:
        if(l < j) goto _L4; else goto _L6
_L6:
        stringbuffer.append(";");
        return stringbuffer.toString();
    }

    void d()
    {
        i++;
    }

    public void a(uh uh1, nh nh)
    {
        int j;
        int k;
        j = g();
        for(k = 0;k < j; k++){
            a(k).a(this, nh);
        }
            lh lh1 = (lh)uh1;
            lh1.a(a());
    }

    private static String z(char[] chs) {
        for (int i = 0; i < chs.length; i++) {
            byte key = 0;
            switch (i % 5) {
                case 0:
                    key =0x72;
                    break;
                case 1:
                    key =5;
                    break;
                case 2:
                    key =27;
                    break;
                case 3:
                    key =24;
                    break;
                default:
                    key =117;
                    break;
            }
            chs[i] ^= key;
        }
        return new String(chs).intern();
    }


    static 
    {
        g = new Hashtable(23);
        g.put(z("\020|o}".toCharArray()),"B");
        g.put(z("\021mzj".toCharArray()),"C");
        g.put(z("\026jnz\031\027".toCharArray()),"D");
        g.put(z("\024ity\001".toCharArray()),"F");
        g.put(z("\033ko".toCharArray()),"I");
        g.put(z("\036ju\177".toCharArray()),"J");
        g.put(z("\001mtj\001".toCharArray()),"S");
        g.put(z("\020jtt\020\023k".toCharArray()),"Z");
    }
}